iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 9
0
自我挑戰組

前端我來了 - 30天 JavaScript 從無到有 系列 第 9

[30天 JavaScript 從無到有 Day 9] Loop and Iteration

  • 分享至 

  • xImage
  •  

迴圈
For loop

for ( 某變數 = 初始值 ; 某變數 < 限制值 ; 某變數 + 遞增(減)值 ) {
 要執行的程式碼
}

while loop

while ( 判斷式 ){
  console.log( i );
}

do while
比起一般的 while loop判斷,第一次一定會執行

var i = 3;
do {
  i -= 3;
  console.log(i);
} while (i > 10);

// output 0

簡單來說 For loop是以一個區間做為執行的基準點,而 while loop 則是依據某個的判斷

continue and break statements
continue -> 略過一次,但繼續執行迴圈

for (var i = 1 ; i < 5 ; i++ ) {
 if (i == 3) continue;
 console.log(i)
}
// 1
// 2
// 4

break -> 離開迴圈

for (var i = 1 ; i < 5 ; i++ ) {
 if (i == 3) break;
 console.log(i)
}
// 1
// 2

迭代(Iteration)
最後來談談迭代(Iteration),不知道是不是很多人跟我一樣常常聽到,但其實不知道它的定義是甚麼
這邊先分成以下幾個 迴圈、遞迴、遍歷、迭代
迴圈(loop) -> 基礎概念,也就是重複
遞迴(recursion) -> 函數的定義中使用函數自身的方法

function recursion_test(n) {
    if (n == 0) {
        return 1;
    }
    return recursion(n - 1);
}

迭代(iterate) -> 重複實作,每次得到的結果被用來作為下一次迭代的初始值

function iterate_test(n) {
	var total = 0;
	for (var i = 1 ; i < n ; i++ ){
		sum = sum * i
    {
	return sum
}

遍歷(traversal) -> 較複雜,大多會以樹的概念解釋,指沿着某條搜索路線,依次對樹中每個結點均做一次且僅做一次訪問


課程 : https://www.udemy.com/course/the-complete-javascript-course/
來源 :
https://ithelp.ithome.com.tw/articles/10191453
https://www.wibibi.com/info.php?tid=182
https://nbis.pixnet.net/blog/post/58238148
https://www.itread01.com/content/1545650488.html
https://www.jstips.co/zh_tw/javascript/recursion-iteration-and-tail-calls-in-js/
https://emn178.pixnet.net/blog/post/89039431


上一篇
[30天 JavaScript 從無到有 Day 8] Object, Properties and Methods
下一篇
番外篇-透過ElasticSearch實作全文檢索 -1
系列文
前端我來了 - 30天 JavaScript 從無到有 30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言